๋จธํด ํธ๋ฆฌ, ์ํธํ ์์ฑ, ๋ธ๋ก์ฒด์ธ, ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ๋ฐ ๋ถ์ฐ ์์คํ ์์์ ์์ฉ ๋ถ์ผ๋ฅผ ์ดํด๋ณด์ธ์. ํจ์จ์ ์ด๊ณ ์์ ํ ๋ฐ์ดํฐ ๊ฒ์ฆ์ ๋ณด์ฅํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.
๋จธํด ํธ๋ฆฌ: ์ํธํ ๋ฐ์ดํฐ ๊ตฌ์กฐ ์ฌ์ธต ๋ถ์
๋์งํธ ์๋์ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ๊ณผ ๋ณด์์ ๋ณด์ฅํ๋ ๊ฒ์ ๋งค์ฐ ์ค์ํฉ๋๋ค. ๊ธ์ต ๊ฑฐ๋์์ ๋ฌธ์ ๊ด๋ฆฌ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ฐ์ดํฐ์ ์ง์ ์ฌ๋ถ์ ๋ณ๊ฒฝ๋์ง ์์ ํน์ฑ์ ํ์ธํด์ผ ํ ํ์์ฑ์ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ด ์์ญ์์ ์ค์ํ ์ญํ ์ ํ๋ ์ํธํ ๋ฐ์ดํฐ ๊ตฌ์กฐ ์ค ํ๋๋ ํด์ ํธ๋ฆฌ๋ผ๊ณ ๋ ์๋ ค์ง ๋จธํด ํธ๋ฆฌ์ ๋๋ค.
๋จธํด ํธ๋ฆฌ๋ ๋ฌด์์ ๋๊น?
๋จธํด ํธ๋ฆฌ๋ ๊ฐ ๋น๋ฆฌํ ๋ ธ๋(๋ด๋ถ ๋ ธ๋)๊ฐ ์์ ๋ ธ๋์ ํด์์ด๊ณ ๊ฐ ๋ฆฌํ ๋ ธ๋๊ฐ ๋ฐ์ดํฐ ๋ธ๋ก์ ํด์์ธ ํธ๋ฆฌ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋๋ค. ์ด ๊ตฌ์กฐ๋ฅผ ํตํด ๋๋์ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ด๊ณ ์์ ํ๊ฒ ๊ฒ์ฆํ ์ ์์ต๋๋ค. Ralph Merkle์ด 1979๋ ์ ํนํ๋ฅผ ๋๊ธฐ ๋๋ฌธ์ ์ด๋ฆ์ด ๋ถ์ฌ์ก์ต๋๋ค.
๊ฐ์กฑ ํธ๋ฆฌ์ ๊ฐ๋ค๊ณ ์๊ฐํ๋ ์๋ฌผํ์ ๋ถ๋ชจ ๋์ ๊ฐ ๋ ธ๋๋ ํด๋น "์์"์ ์ํธํ ํด์์์ ํ์๋ฉ๋๋ค. ์ด ๊ณ์ธต์ ๊ตฌ์กฐ๋ ๊ฐ์ฅ ์์ ๋ฐ์ดํฐ ๋ธ๋ก์ ๋ํ ๋ณ๊ฒฝ ์ฌํญ๋ ์์ชฝ์ผ๋ก ์ ํ๋์ด ๋ฃจํธ๊น์ง ๋ชจ๋ ํด์๋ฅผ ๋ณ๊ฒฝํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
๋จธํด ํธ๋ฆฌ์ ์ฃผ์ ๊ตฌ์ฑ ์์:
- ๋ฆฌํ ๋ ธ๋: ์ค์ ๋ฐ์ดํฐ ๋ธ๋ก์ ํด์๋ฅผ ๋ํ๋ ๋๋ค. ๊ฐ ๋ฐ์ดํฐ ๋ธ๋ก์ ์ํธํ ํด์ ํจ์(์: SHA-256, SHA-3)๋ฅผ ์ฌ์ฉํ์ฌ ํด์๋์ด ๋ฆฌํ ๋ ธ๋๋ฅผ ๋ง๋ญ๋๋ค.
- ๋ด๋ถ ๋ ธ๋: ์์ ๋ ธ๋์ ํด์์ ๋๋ค. ๋ ธ๋์ ๋ ๊ฐ์ ์์์ด ์๋ ๊ฒฝ์ฐ ํด๋น ํด์๊ฐ ์ฐ๊ฒฐ๋ ๋ค์ ๋ค์ ํด์๋์ด ๋ถ๋ชจ ๋ ธ๋์ ํด์๋ฅผ ๋ง๋ญ๋๋ค.
- ๋ฃจํธ ๋ ธ๋(๋จธํด ๋ฃจํธ): ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ๋ฅผ ๋ํ๋ด๋ ์ต์์ ํด์์ ๋๋ค. ํธ๋ฆฌ ๋ด์ ๋ชจ๋ ๋ฐ์ดํฐ์ ๋ํ ๋จ์ผํ๊ณ ๊ณ ์ ํ ์ง๋ฌธ์ ๋๋ค. ๊ธฐ๋ณธ ๋ฐ์ดํฐ์ ๋ณ๊ฒฝ ์ฌํญ์ ํ์ฐ์ ์ผ๋ก ๋จธํด ๋ฃจํธ๋ฅผ ๋ณ๊ฒฝํฉ๋๋ค.
๋จธํด ํธ๋ฆฌ์ ์๋ ๋ฐฉ์: ๊ตฌ์ถ ๋ฐ ๊ฒ์ฆ
๋จธํด ํธ๋ฆฌ ๊ตฌ์ถ:
- ๋ฐ์ดํฐ ๋๋๊ธฐ: ๋ฐ์ดํฐ๋ฅผ ๋ ์์ ๋ธ๋ก์ผ๋ก ๋๋๋๋ค.
- ๋ธ๋ก ํด์ฑ: ๊ฐ ๋ฐ์ดํฐ ๋ธ๋ก์ ํด์ฑํ์ฌ ๋ฆฌํ ๋ ธ๋๋ฅผ ๋ง๋ญ๋๋ค. ์๋ฅผ ๋ค์ด ๋ค ๊ฐ์ ๋ฐ์ดํฐ ๋ธ๋ก(A, B, C, D)์ด ์๋ ๊ฒฝ์ฐ ๋ค ๊ฐ์ ๋ฆฌํ ๋ ธ๋(hash(A), hash(B), hash(C) ๋ฐ hash(D))๊ฐ ์์ต๋๋ค.
- ์๋ณ ํด์ฑ: ๋ฆฌํ ๋ ธ๋๋ฅผ ์์ผ๋ก ๋ฌถ๊ณ ๊ฐ ์์ ํด์ฑํฉ๋๋ค. ์ด ์์์๋ (hash(A) + hash(B)) ๋ฐ (hash(C) + hash(D))๋ฅผ ํด์ฑํฉ๋๋ค. ์ด๋ฌํ ํด์๋ ํธ๋ฆฌ์์ ๋ค์ ์์ค์ ๋ ธ๋๊ฐ ๋ฉ๋๋ค.
- ๋ฐ๋ณต: ๋จ์ผ ๋ฃจํธ ๋ ธ๋์ธ ๋จธํด ๋ฃจํธ์ ๋๋ฌํ ๋๊น์ง ํ์ด๋ง ๋ฐ ํด์ฑ์ ๊ณ์ํฉ๋๋ค. ๋ฆฌํ ์๊ฐ ํ์์ด๋ฉด ๋ง์ง๋ง ๋ฆฌํ๋ฅผ ๋ณต์ ํ์ฌ ์์ ๋ง๋ค ์ ์์ต๋๋ค.
์:
๋ค ๊ฐ์ ํธ๋์ญ์ ์ด ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
- ํธ๋์ญ์ 1: Alice์๊ฒ 10 USD ๋ณด๋ด๊ธฐ
- ํธ๋์ญ์ 2: Bob์๊ฒ 20 EUR ๋ณด๋ด๊ธฐ
- ํธ๋์ญ์ 3: Carol์๊ฒ 30 GBP ๋ณด๋ด๊ธฐ
- ํธ๋์ญ์ 4: David์๊ฒ 40 JPY ๋ณด๋ด๊ธฐ
- H1 = hash(ํธ๋์ญ์ 1)
- H2 = hash(ํธ๋์ญ์ 2)
- H3 = hash(ํธ๋์ญ์ 3)
- H4 = hash(ํธ๋์ญ์ 4)
- H12 = hash(H1 + H2)
- H34 = hash(H3 + H4)
- ๋จธํด ๋ฃจํธ = hash(H12 + H34)
๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ๊ฒ์ฆ:
๋จธํด ํธ๋ฆฌ์ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ "๋จธํด ์ฆ๋ช " ๋๋ "๊ฐ์ฌ ์ถ์ "์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ฒ์ฆํ๋ ๋ฅ๋ ฅ์ ์์ต๋๋ค. ํน์ ๋ฐ์ดํฐ ๋ธ๋ก์ ๊ฒ์ฆํ๊ธฐ ์ํด ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ๋ฅผ ๋ค์ด๋ก๋ํ ํ์๊ฐ ์์ต๋๋ค. ๋์ ๋จธํด ๋ฃจํธ, ๊ฒ์ฆํ๋ ค๋ ๋ฐ์ดํฐ ๋ธ๋ก์ ํด์ ๋ฐ ๋ฆฌํ ๋ ธ๋์์ ๋ฃจํธ๊น์ง์ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ ์ค๊ฐ ํด์ ์งํฉ๋ง ์์ผ๋ฉด ๋ฉ๋๋ค.
- ๋จธํด ๋ฃจํธ ํ๋: ํธ๋ฆฌ์ ์ ๋ขฐํ ์ ์๋ ๋ฃจํธ ํด์์ ๋๋ค.
- ๋ฐ์ดํฐ ๋ธ๋ก ๋ฐ ํด๋น ํด์ ํ๋: ๊ฒ์ฆํ๋ ค๋ ๋ฐ์ดํฐ ๋ธ๋ก์ ๊ฐ์ ธ์ ํด๋น ํด์๋ฅผ ๊ณ์ฐํฉ๋๋ค.
- ๋จธํด ์ฆ๋ช ํ๋: ๋จธํด ์ฆ๋ช ์๋ ๋ฆฌํ ๋ ธ๋์์ ๋ฃจํธ๊น์ง์ ๊ฒฝ๋ก๋ฅผ ์ฌ๊ตฌ์ฑํ๋ ๋ฐ ํ์ํ ํด์๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
- ๊ฒฝ๋ก ์ฌ๊ตฌ์ฑ: ๋จธํด ์ฆ๋ช ๊ณผ ๋ฐ์ดํฐ ๋ธ๋ก์ ํด์๋ฅผ ์ฌ์ฉํ์ฌ ๋ฃจํธ์ ๋๋ฌํ ๋๊น์ง ํธ๋ฆฌ ๊ฐ ์์ค์์ ํด์๋ฅผ ์ฌ๊ตฌ์ฑํฉ๋๋ค.
- ๋น๊ต: ์ฌ๊ตฌ์ฑ๋ ๋ฃจํธ ํด์๋ฅผ ์ ๋ขฐํ ์ ์๋ ๋จธํด ๋ฃจํธ์ ๋น๊ตํฉ๋๋ค. ์ผ์นํ๋ฉด ๋ฐ์ดํฐ ๋ธ๋ก์ด ๊ฒ์ฆ๋ฉ๋๋ค.
์(์์์ ๊ณ์):
ํธ๋์ญ์ 2๋ฅผ ํ์ธํ๋ ค๋ฉด ๋ค์์ด ํ์ํฉ๋๋ค.
- ๋จธํด ๋ฃจํธ
- H2(ํธ๋์ญ์ 2์ ํด์)
- H1(๋จธํด ์ฆ๋ช ์์)
- H34(๋จธํด ์ฆ๋ช ์์)
- H12' = hash(H1 + H2)
- ๋จธํด ๋ฃจํธ' = hash(H12' + H34)
๋จธํด ํธ๋ฆฌ์ ์ฅ์
๋จธํด ํธ๋ฆฌ๋ ๋ค์ํ ์์ฉ ๋ถ์ผ์์ ๊ฐ์น ์๊ฒ ๋ง๋๋ ์ฌ๋ฌ ๊ฐ์ง ์ฅ์ ์ ์ ๊ณตํฉ๋๋ค.
- ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ: ๋ฐ์ดํฐ ์์ ์ ๋จธํด ๋ฃจํธ๋ฅผ ๋ณ๊ฒฝํ์ฌ ๋ฐ์ดํฐ ์์ ๋๋ ๋ณ์กฐ๋ฅผ ๊ฐ์งํ๋ ๊ฐ๋ ฅํ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค.
- ํจ์จ์ ์ธ ๊ฒ์ฆ: ํน์ ๋ฐ์ดํฐ ๋ธ๋ก์ ๊ฒ์ฆํ๋ ๋ฐ์๋ ํธ๋ฆฌ(๋จธํด ์ฆ๋ช )์ ์์ ๋ถ๋ถ๋ง ํ์ํ๋ฏ๋ก ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ธํธ์์๋ ๊ฒ์ฆ์ด ๋งค์ฐ ํจ์จ์ ์ ๋๋ค. ์ด๋ ๋์ญํญ์ด ์ ํ๋ ํ๊ฒฝ์์ ํนํ ์ ์ฉํฉ๋๋ค.
- ํ์ฅ์ฑ: ๋จธํด ํธ๋ฆฌ๋ ๋๋์ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ๊ฒ์ฆ ํ๋ก์ธ์ค์๋ ๋ฐ์ดํฐ ๋ธ๋ก ์์ ์๋์ ์ธ ๋ก๊ทธ ์์ ํด์๋ง ํ์ํฉ๋๋ค.
- ๊ฒฐํจ ํ์ฉ: ๊ฐ ๋ถ๊ธฐ๊ฐ ๋ ๋ฆฝ์ ์ด๋ฏ๋ก ํธ๋ฆฌ์ ํ ๋ถ๋ถ์ ๋ํ ์์์ด ๋ค๋ฅธ ๋ถ๋ถ์ ๋ฌด๊ฒฐ์ฑ์ ๋ฐ๋์ ์ํฅ์ ๋ฏธ์น์ง๋ ์์ต๋๋ค.
- ๊ฐ์ธ ์ ๋ณด ๋ณดํธ: ํด์ฑ์ ์ค์ ๋ฐ์ดํฐ๊ฐ ํธ๋ฆฌ์ ์ง์ ์ ์ฅ๋์ง ์์ผ๋ฏ๋ก ๊ฐ์ธ ์ ๋ณด ๋ณดํธ ์์ค์ ์ ๊ณตํฉ๋๋ค. ํด์๋ง ์ฌ์ฉ๋ฉ๋๋ค.
๋จธํด ํธ๋ฆฌ์ ๋จ์
๋จธํด ํธ๋ฆฌ๋ ์๋นํ ์ด์ ์ ์ ๊ณตํ์ง๋ง ๋ช ๊ฐ์ง ์ ํ ์ฌํญ๋ ์์ต๋๋ค.
- ๊ณ์ฐ ์ค๋ฒํค๋: ํนํ ๋งค์ฐ ํฐ ๋ฐ์ดํฐ ์ธํธ์ ๊ฒฝ์ฐ ํด์ ๊ณ์ฐ์ ๊ณ์ฐ ์ง์ฝ์ ์ผ ์ ์์ต๋๋ค.
- ์คํ ๋ฆฌ์ง ์๊ตฌ ์ฌํญ: ์ ์ฒด ํธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ์ ์ฅํ๋ ค๋ฉด ์๋นํ ์คํ ๋ฆฌ์ง ๊ณต๊ฐ์ด ํ์ํ ์ ์์ง๋ง ๋จธํด ์ฆ๋ช ์์ฒด๋ ๋น๊ต์ ์์ต๋๋ค.
- ์ ํ ์ด๋ฏธ์ง ๊ณต๊ฒฉ์ ๋ํ ์ทจ์ฝ์ฑ(๊ฐ๋ ฅํ ํด์ ํจ์๋ก ์ํ): ๋๋ฌผ์ง๋ง ์ฌ์ฉ๋ ํด์ ํจ์์ ๋ํ ์ ํ ์ด๋ฏธ์ง ๊ณต๊ฒฉ์ ํธ๋ฆฌ์ ๋ฌด๊ฒฐ์ฑ์ ์์์ํฌ ์ ์์ต๋๋ค. ์ด ์ํ์ ์ํธํ์ ์ผ๋ก ๊ฐ๋ ฅํ ํด์ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ์ํ๋ฉ๋๋ค.
๋จธํด ํธ๋ฆฌ์ ์์ฉ ๋ถ์ผ
๋จธํด ํธ๋ฆฌ๋ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ๊ณผ ํจ์จ์ ์ธ ๊ฒ์ฆ์ด ์ค์ํ ๋ค์ํ ์์ฉ ๋ถ์ผ์์ ๋๋ฆฌ ์ฌ์ฉ๋์์ต๋๋ค.
๋ธ๋ก์ฒด์ธ ๊ธฐ์
๋จธํด ํธ๋ฆฌ์ ๊ฐ์ฅ ์ค์ํ ์์ฉ ๋ถ์ผ ์ค ํ๋๋ ๋ธ๋ก์ฒด์ธ ๊ธฐ์ , ํนํ ๋นํธ์ฝ์ธ๊ณผ ๊ฐ์ ์ํธํํ์ ๋๋ค. ๋นํธ์ฝ์ธ์์ ๋จธํด ํธ๋ฆฌ๋ ๋ธ๋ก์ ๋ชจ๋ ํธ๋์ญ์ ์ ์์ฝํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ธ๋ก์ ๋ชจ๋ ํธ๋์ญ์ ์ ๋ํ๋ด๋ ๋จธํด ๋ฃจํธ๋ ๋ธ๋ก ํค๋์ ํฌํจ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ ์ฒด ๋ธ๋ก์ฒด์ธ์ ๋ค์ด๋ก๋ํ์ง ์๊ณ ๋ ๋ธ๋ก ๋ด์ ํธ๋์ญ์ ์ ํจ์จ์ ์ผ๋ก ๊ฒ์ฆํ ์ ์์ต๋๋ค.
์: ๋นํธ์ฝ์ธ ๋ธ๋ก์์ ๋จธํด ํธ๋ฆฌ๋ ๋ธ๋ก์ ํฌํจ๋ ๋ชจ๋ ํธ๋์ญ์ ์ด ํฉ๋ฒ์ ์ด๊ณ ๋ณ์กฐ๋์ง ์์๋์ง ํ์ธํฉ๋๋ค. SPV(Simplified Payment Verification) ํด๋ผ์ด์ธํธ๋ ์ ์ฒด ๋ธ๋ก์ ๋ค์ด๋ก๋ํ์ง ์๊ณ ํด๋น ํธ๋์ญ์ ์ ๋ํ ๋จธํด ๋ฃจํธ์ ๋จธํด ์ฆ๋ช ๋ง ์์ผ๋ฉด ํธ๋์ญ์ ์ด ๋ธ๋ก์ ํฌํจ๋์ด ์๋์ง ํ์ธํ ์ ์์ต๋๋ค.
๋ฒ์ ์ ์ด ์์คํ (์: Git)
Git์ ๊ฐ์ ๋ฒ์ ์ ์ด ์์คํ ์ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ํ์ผ ๋ฐ ๋๋ ํฐ๋ฆฌ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ํฉ๋๋ค. Git์ ๊ฐ ์ปค๋ฐ์ ๋จธํด ํธ๋ฆฌ๋ก ํ์๋๋ฉฐ ์ฌ๊ธฐ์ ๋ฆฌํ ๋ ธ๋๋ ํ์ผ์ ํด์๋ฅผ ๋ํ๋ด๊ณ ๋ด๋ถ ๋ ธ๋๋ ๋๋ ํฐ๋ฆฌ์ ํด์๋ฅผ ๋ํ๋ ๋๋ค. ์ด๋ฅผ ํตํด Git๋ ๋ณ๊ฒฝ ์ฌํญ์ ํจ์จ์ ์ผ๋ก ๊ฐ์งํ๊ณ ๋ค๋ฅธ ๋ฆฌํฌ์งํ ๋ฆฌ ๊ฐ์ ํ์ผ์ ๋๊ธฐํํ ์ ์์ต๋๋ค.
์: ์๊ฒฉ Git ๋ฆฌํฌ์งํ ๋ฆฌ์ ์ปค๋ฐ์ ํธ์ํ๋ฉด Git๋ ๋จธํด ํธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ง์ง๋ง ์ปค๋ฐ ์ดํ ๋ณ๊ฒฝ๋ ํ์ผ์ ์๋ณํฉ๋๋ค. ๋ณ๊ฒฝ๋ ํ์ผ๋ง ์ ์กํ๋ฉด ๋์ญํญ๊ณผ ์๊ฐ์ ์ ์ฝํ ์ ์์ต๋๋ค.
IPFS(InterPlanetary File System)
๋ถ์ฐ ์คํ ๋ฆฌ์ง ๋ฐ ํ์ผ ๊ณต์ ์์คํ ์ธ IPFS๋ ๋จธํด ํธ๋ฆฌ์ ์ผ๋ฐํ์ธ ๋จธํด DAG(Directed Acyclic Graph)๋ฅผ ์ฌ์ฉํฉ๋๋ค. IPFS์์ ํ์ผ์ ๋ธ๋ก์ผ๋ก ๋๋๊ณ ๊ฐ ๋ธ๋ก์ ํด์๋ฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ํด์๊ฐ ๋จธํด DAG์์ ํจ๊ป ์ฐ๊ฒฐ๋์ด ์ฝํ ์ธ ์ฃผ์ ์ง์ ์คํ ๋ฆฌ์ง ์์คํ ์ ๋ง๋ญ๋๋ค. ์ด๋ฅผ ํตํด ํจ์จ์ ์ธ ์ฝํ ์ธ ๊ฒ์ฆ ๋ฐ ์ค๋ณต ์ ๊ฑฐ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
์: ํ์ผ์ IPFS์ ์ ๋ก๋ํ๋ฉด ๋ ์์ ๋ธ๋ก์ผ๋ก ๋ถํ ๋๊ณ ๊ฐ ๋ธ๋ก์ ํด์๋ฉ๋๋ค. ๋จธํด DAG ๊ตฌ์กฐ๋ฅผ ํตํด IPFS๋ ํ์ผ์ด ๋งค์ฐ ํฌ๊ฑฐ๋ ์์ ๋ ๊ฒฝ์ฐ์๋ ํ์ผ์ ๊ณ ์ ํ ๋ธ๋ก๋ง ํจ์จ์ ์ผ๋ก ์๋ณํ๊ณ ๊ณต์ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ์คํ ๋ฆฌ์ง ๋ฐ ๋์ญํญ ๋น์ฉ์ด ํฌ๊ฒ ์ ๊ฐ๋ฉ๋๋ค.
CA(์ธ์ฆ ๊ธฐ๊ด) ๋ฐ ํฌ๋ช ์ฑ ๋ก๊ทธ
CA(์ธ์ฆ ๊ธฐ๊ด)๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ๊ธํ๋ ์ธ์ฆ์์ ํฌ๋ช ์ฑ ๋ก๊ทธ๋ฅผ ๋ง๋ญ๋๋ค. ์ด๋ฅผ ํตํด ์ธ์ฆ์๋ฅผ ๊ณต๊ฐ์ ์ผ๋ก ๊ฐ์ฌํ๊ณ ์ฌ๊ธฐ ๋๋ ์๋ชป ๋ฐ๊ธ๋ ์ธ์ฆ์๋ฅผ ๊ฐ์งํ ์ ์์ต๋๋ค. CT(Certificate Transparency) ๋ก๊ทธ๋ ๊ฐ ๋ฆฌํ ๋ ธ๋๊ฐ ์ธ์ฆ์๋ฅผ ๋ํ๋ด๋ ๋จธํด ํธ๋ฆฌ๋ก ๊ตฌํ๋ฉ๋๋ค.
์: Google์ ์ธ์ฆ์ ํฌ๋ช ์ฑ ํ๋ก์ ํธ๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ CA์์ ๋ฐ๊ธํ ๋ชจ๋ SSL/TLS ์ธ์ฆ์์ ๊ณต๊ฐ ๋ก๊ทธ๋ฅผ ์ ์งํฉ๋๋ค. ์ด๋ฅผ ํตํด ๋๊ตฌ๋ ์ธ์ฆ์๊ฐ ํฉ๋ฒ์ ์ธ CA์์ ๋ฐ๊ธ๋์๊ณ ๋ณ์กฐ๋์ง ์์๋์ง ํ์ธํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ค๊ฐ์ ๊ณต๊ฒฉ์ ๋ฐฉ์งํ๊ณ HTTPS ์ฐ๊ฒฐ์ ๋ณด์์ ๋ณด์ฅํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ
๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ํ์ธํ ์ ์์ต๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ์ฝ๋์ ๋จธํด ํธ๋ฆฌ๋ฅผ ๋ง๋ค๋ฉด ๋ฐ์ดํฐ๊ฐ ์์๋๊ฑฐ๋ ๋ณ์กฐ๋์ง ์์๋์ง ๋น ๋ฅด๊ฒ ํ์ธํ ์ ์์ต๋๋ค. ์ด๋ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฌ ๋ ธ๋์ ๋ณต์ ๋๋ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ํนํ ์ ์ฉํฉ๋๋ค.
์: ๊ธ์ต ๊ธฐ๊ด์ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ํธ๋์ญ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฌด๊ฒฐ์ฑ์ ํ์ธํ ์ ์์ต๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ์ฝ๋์ ๋จธํด ๋ฃจํธ๋ฅผ ๊ณ์ฐํ๋ฉด ๋ฐ์ดํฐ์ ๋ฌด๋จ ๋ณ๊ฒฝ ๋๋ ๋ถ์ผ์น๋ฅผ ๋น ๋ฅด๊ฒ ๊ฐ์งํ ์ ์์ต๋๋ค.
๋ณด์ ๋ฐ์ดํฐ ์ ์ก ๋ฐ ์ ์ฅ
๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋คํธ์ํฌ๋ฅผ ํตํด ์ ์ก๋๊ฑฐ๋ ์คํ ๋ฆฌ์ง ์ฅ์น์ ์ ์ฅ๋ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ํ์ธํ ์ ์์ต๋๋ค. ์ ์ก ๋๋ ์ ์ฅํ๊ธฐ ์ ์ ๋ฐ์ดํฐ์ ๋จธํด ๋ฃจํธ๋ฅผ ๊ณ์ฐํ ๋ค์ ์ ์ก ๋๋ ๊ฒ์ ํ ๋ค์ ๊ณ์ฐํ๋ฉด ๋ฐ์ดํฐ๊ฐ ์ ์ก ์ค ๋๋ ๋ณด๊ด ์ค์ ์์๋์ง ์์๋์ง ํ์ธํ ์ ์์ต๋๋ค.
์: ์๊ฒฉ ์๋ฒ์์ ๋์ฉ๋ ํ์ผ์ ๋ค์ด๋ก๋ํ ๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์ด๋ก๋ ํ๋ก์ธ์ค ์ค์ ํ์ผ์ด ์์๋์ง ์์๋์ง ํ์ธํ ์ ์์ต๋๋ค. ์๋ฒ๋ ํ์ผ์ ๋จธํด ๋ฃจํธ๋ฅผ ์ ๊ณตํ๊ณ ๋ค์ด๋ก๋ํ ํ์ผ์ ๋จธํด ๋ฃจํธ๋ฅผ ๊ณ์ฐํ์ฌ ์๋ฒ์ ๋จธํด ๋ฃจํธ์ ๋น๊ตํ ์ ์์ต๋๋ค. ๋ ๋จธํด ๋ฃจํธ๊ฐ ์ผ์นํ๋ฉด ํ์ผ์ด ์์๋์ง ์์๋ค๊ณ ํ์ ํ ์ ์์ต๋๋ค.
๋จธํด ํธ๋ฆฌ ๋ณํ
ํน์ ์๊ตฌ ์ฌํญ์ ํด๊ฒฐํ๊ฑฐ๋ ์ฑ๋ฅ์ ํฅ์์ํค๊ธฐ ์ํด ์ฌ๋ฌ ๊ฐ์ง ๋จธํด ํธ๋ฆฌ ๋ณํ์ด ๊ฐ๋ฐ๋์์ต๋๋ค.
- ์ด์ง ๋จธํด ํธ๋ฆฌ: ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ์ ํ์ผ๋ก ๊ฐ ๋ด๋ถ ๋ ธ๋์ ์ ํํ ๋ ๊ฐ์ ์์์ด ์์ต๋๋ค.
- Nํญ ๋จธํด ํธ๋ฆฌ: ๊ฐ ๋ด๋ถ ๋ ธ๋์ N๊ฐ์ ์์์ด ์์ ์ ์์ด ๋ ํฐ ํฌ์์๊ณผ ์ ์ฌ์ ์ผ๋ก ๋ ๋น ๋ฅธ ๊ฒ์ฆ์ด ๊ฐ๋ฅํฉ๋๋ค.
- ADS(Authenticated Data Structures): ๋ณต์กํ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ํ ์ํธํ ์ธ์ฆ์ ์ ๊ณตํ๋ ๋จธํด ํธ๋ฆฌ์ ์ผ๋ฐํ์ ๋๋ค.
- MMR(Merkle Mountain Range): ์คํ ๋ฆฌ์ง ์๊ตฌ ์ฌํญ์ ์ค์ด๊ธฐ ์ํด ๋นํธ์ฝ์ธ์ UTXO(Unspent Transaction Output) ์ธํธ์์ ์ฌ์ฉ๋๋ ๋ณํ์ ๋๋ค.
๊ตฌํ ๊ณ ๋ ค ์ฌํญ
๋จธํด ํธ๋ฆฌ๋ฅผ ๊ตฌํํ ๋ ๋ค์ ์ฌํญ์ ๊ณ ๋ คํ์ญ์์ค.
- ํด์ ํจ์ ์ ํ: ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ ค๋ฉด ์ํธํ์ ์ผ๋ก ๊ฐ๋ ฅํ ํด์ ํจ์(์: SHA-256, SHA-3)๋ฅผ ์ ํํฉ๋๋ค. ํด์ ํจ์ ์ ํ์ ๋ณด์ ์๊ตฌ ์ฌํญ๊ณผ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ณ์ฐ ๋ฆฌ์์ค์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค.
- ํธ๋ฆฌ ๊ท ํ ์กฐ์ : ์ผ๋ถ ์์ฉ ๋ถ์ผ์์๋ ์ต์ ์ ์ฑ๋ฅ์ ๋ณด์ฅํ๊ธฐ ์ํด ํธ๋ฆฌ์ ๊ท ํ์ ์กฐ์ ํด์ผ ํ ์ ์์ต๋๋ค. ๊ท ํ์ด ๋ง์ง ์๋ ํธ๋ฆฌ๋ ํน์ ๋ฐ์ดํฐ ๋ธ๋ก์ ๋ํ ๊ฒ์ฆ ์๊ฐ์ด ๊ธธ์ด์ง ์ ์์ต๋๋ค.
- ์คํ ๋ฆฌ์ง ์ต์ ํ: ๋จธํด ๋ง์ดํด ๋ ์ธ์ง ๋๋ ๊ธฐํ ๋ฐ์ดํฐ ์์ถ ๋ฐฉ๋ฒ ์ฌ์ฉ๊ณผ ๊ฐ์ด ํธ๋ฆฌ์ ์คํ ๋ฆฌ์ง ์๊ตฌ ์ฌํญ์ ์ค์ด๊ธฐ ์ํ ๊ธฐ์ ์ ๊ณ ๋ คํ์ญ์์ค.
- ๋ณด์ ๊ณ ๋ ค ์ฌํญ: ์ ํ ์ด๋ฏธ์ง ๊ณต๊ฒฉ๊ณผ ๊ฐ์ ์ ์ฌ์ ์ธ ๋ณด์ ์ทจ์ฝ์ ์ ์๊ณ ์ด๋ฅผ ์ํํ๊ธฐ ์ํ ์กฐ์น๋ฅผ ์ทจํ์ญ์์ค. ์๋ก ๋ฐ๊ฒฌ๋ ์ทจ์ฝ์ ์ ํด๊ฒฐํ๊ธฐ ์ํด ๊ตฌํ์ ์ ๊ธฐ์ ์ผ๋ก ๊ฒํ ํ๊ณ ์ ๋ฐ์ดํธํ์ญ์์ค.
๋ฏธ๋ ๋ํฅ ๋ฐ ๊ฐ๋ฐ
๋จธํด ํธ๋ฆฌ๋ ๋์์์ด ๋ณํํ๋ ๋ฐ์ดํฐ ๋ณด์ ๋ฐ ๋ถ์ฐ ์์คํ ํ๊ฒฝ์์ ๊ณ์ ์งํํ๊ณ ์๋ก์ด ์์ฉ ๋ถ์ผ๋ฅผ ์ฐพ๊ณ ์์ต๋๋ค. ๋ช ๊ฐ์ง ๋ฏธ๋ ๋ํฅ ๋ฐ ๊ฐ๋ฐ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์์ ๋ด์ฑ ํด์ฑ: ์์ ์ปดํจํ ์ด ๋์ฑ ๋ณดํธํ๋จ์ ๋ฐ๋ผ ์์ ๊ณต๊ฒฉ์ ๋ด์ฑ์ด ์๋ ํด์ ํจ์์ ๋ํ ํ์์ฑ์ด ์ปค์ง๊ณ ์์ต๋๋ค. ๋จธํด ํธ๋ฆฌ์์ ์ฌ์ฉํ ์ ์๋ ์์ ๋ด์ฑ ํด์ฑ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ๋ฐํ๊ธฐ ์ํ ์ฐ๊ตฌ๊ฐ ์งํ ์ค์ ๋๋ค.
- ์์ง์ ์ฆ๋ช : ๋จธํด ํธ๋ฆฌ๋ฅผ ์์ง์ ์ฆ๋ช ๊ณผ ๊ฒฐํฉํ์ฌ ํจ์ฌ ๋ ๋์ ์์ค์ ๊ฐ์ธ ์ ๋ณด ๋ณดํธ ๋ฐ ๋ณด์์ ์ ๊ณตํ ์ ์์ต๋๋ค. ์์ง์ ์ฆ๋ช ์ ์ฌ์ฉํ๋ฉด ์์ ์ด ์๊ณ ์๋ ๊ฒ์ ๋ฐํ์ง ์๊ณ ๋ ์์ ์ด ์๊ณ ์๋ค๋ ๊ฒ์ ์ฆ๋ช ํ ์ ์์ต๋๋ค.
- ๋ถ์ฐ ID: ๋จธํด ํธ๋ฆฌ๋ ๊ฐ์ธ์ด ์์ ์ ๋์งํธ ID๋ฅผ ์ ์ดํ ์ ์๋ ๋ถ์ฐ ID ์์คํ ์ ๊ตฌ์ถํ๋ ๋ฐ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. ์ด๋ฌํ ์์คํ ์ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ID ํด๋ ์์ ์ ์ฅํ๊ณ ๊ฒ์ฆํฉ๋๋ค.
- ํฅ์๋ ํ์ฅ์ฑ: ํจ์ฌ ๋ ํฐ ๋ฐ์ดํฐ ์ธํธ์ ๋ ๋์ ํธ๋์ญ์ ๋ณผ๋ฅจ์ ์ฒ๋ฆฌํ ์ ์๋ ๋ณด๋ค ํ์ฅ ๊ฐ๋ฅํ ๋จธํด ํธ๋ฆฌ ๊ตฌํ์ ๊ฐ๋ฐํ๊ธฐ ์ํ ์ฐ๊ตฌ๊ฐ ์งํ ์ค์ ๋๋ค.
๊ฒฐ๋ก
๋จธํด ํธ๋ฆฌ๋ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๊ณ ํจ์จ์ ์ธ ๊ฒ์ฆ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ฐ๋ ฅํ๊ณ ๋ค์ฌ๋ค๋ฅํ ์ํธํ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋๋ค. ๊ทธ ์์ฉ ๋ถ์ผ๋ ๋ธ๋ก์ฒด์ธ ๊ธฐ์ ๋ฐ ๋ฒ์ ์ ์ด ์์คํ ์์ ์ธ์ฆ ๊ธฐ๊ด ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์ ์ด๋ฅด๊ธฐ๊น์ง ๊ด๋ฒ์ํ ์ฐ์ ์ ๊ฑธ์ณ ์์ต๋๋ค. ๋ฐ์ดํฐ ๋ณด์๊ณผ ๊ฐ์ธ ์ ๋ณด ๋ณดํธ๊ฐ ์ ์ ๋ ์ค์ํด์ง์ ๋ฐ๋ผ ๋จธํด ํธ๋ฆฌ๋ ๋์งํธ ์ธ๊ณ๋ฅผ ๋ณดํธํ๋ ๋ฐ ๋์ฑ ์ค์ํ ์ญํ ์ ํ ๊ฒ์ ๋๋ค. ๋จธํด ํธ๋ฆฌ์ ์๋ฆฌ์ ์์ฉ ๋ถ์ผ๋ฅผ ์ดํดํจ์ผ๋ก์จ ๊ทธ ํ์ ํ์ฉํ์ฌ ๋ณด๋ค ์์ ํ๊ณ ์์ ์ ์ธ ์์คํ ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
๊ฐ๋ฐ์, ๋ณด์ ์ ๋ฌธ๊ฐ ๋๋ ์ํธํ์ ๋ํด ๋ ์์ธํ ์์๋ณด๋ ๋ฐ ๊ด์ฌ์ด ์๋ ์ฌ๋์ด๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ดํดํ๋ ๊ฒ์ ํ๋ ๋์งํธ ํ๊ฒฝ์ ๋ณต์ก์ฑ์ ํ์ํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ํจ์จ์ ์ด๊ณ ๊ฒ์ฆ ๊ฐ๋ฅํ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ๊ณตํ๋ ๋ฅ๋ ฅ์ ๋ง์ ๋ณด์ ์์คํ ์ ์ด์์ด ๋์ด ์ ์ ๋ ์ํธ ์ฐ๊ฒฐ๋๋ ์ธ์์์ ๋ฐ์ดํฐ๊ฐ ์ ๋ขฐํ ์ ์๊ณ ์์ ์ ์ผ๋ก ์ ์ง๋๋๋ก ๋ณด์ฅํฉ๋๋ค.